1. Field
Embodiments of the invention relate to the field of networking; and more specifically, to performance measurement in networking.
2. Background Information
In the field of networking it is often desirable to be able to measure or monitor network performance. By way of example, it may be desirable to be able to measure or monitor one-way delays, round-trip delays, jitter, and the like. On the one hand, the ability to measure or monitor such metrics may be used to help debug problems, understand the source of problems, or improve network performance. On the other hand, the ability to measure or monitor such metrics may be used to help evaluate levels of service and/or to help ensure compliance with service-level agreements (SLAs).
Various network measurement protocols are known in the arts. One-Way Active Measurement Protocol (OWAMP) is described in RFC 4656. OWAMP may be used to measure unidirectional or one-way metrics/characteristics, such as one-way delay and one-way loss, between two network devices. The measurement may be in either direction between the two network devices. Two-Way Active Measurement Protocol (TWAMP) is described in RFC 5357. TWAMP is based on OWAMP. TWAMP may be used to measure two-way or round-trip metrics/characteristics, such as two-way delay and round-trip loss, between two network devices. These protocols may be used to measure or characterize the behavior of mobile broadband networks, IP networks, and other networks at a given point in time.
Both OWAMP and TWAMP rely on software calculated timestamps in packets transmitted between the two network devices over a link in order to make the measurements. Ideally, the software calculated timestamps should be calculated at precisely the time that the packets are transmitted on and/or received from the link. However, in practice the times that the packets are transmitted on and/or received from the links may differ from the software calculated timestamps. The difference may be due in part to various combinations of factors, such as, for example, the particular architectures of the network devices, the software used in the network devices, the particular data plane configuration, and the like. By way of example, in some cases the difference in such times may be on the order of a few to tens of milliseconds. Such differences may tend to limit the accuracy of the measurements available from these protocols.